home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
090
/
cmln1286.arc
/
BNCHMARK.ADA
/
CHAP14.ADA
< prev
next >
Wrap
Text File
|
1986-10-21
|
2KB
|
48 lines
with TEXT_IO; use TEXT_IO;
procedure CHAPTER_14 is
--
-- Selected tests from Chapter 14 of the Ada LRM
-- This example is taken from section 14.7 of the Ada LRM.
-- Source available from Mark Petersen's Alpo-Net FIDO board at
-- (619) 741-3412, 300/1200/2400 8,N,1
--
type COLOR is (WHITE, RED, ORANGE, YELLOW, GREEN, BLUE, BROWN);
package COLOR_IO is new ENUMERATION_IO(ENUM => COLOR);
package NUMBER_IO is new INTEGER_IO(INTEGER);
use COLOR_IO, NUMBER_IO;
INVENTORY : array (COLOR) of INTEGER := (20, 17, 43, 10, 28, 173, 87);
CHOICE : COLOR;
procedure ENTER_COLOR (SELECTION : out COLOR) is
begin
loop
begin
PUT ("Color selected: "); -- prompts user
GET (SELECTION); -- accepts color typed, or raises exception
return;
exception
when DATA_ERROR =>
PUT("Invalid color, try again. "); -- user has typed new line
NEW_LINE(2);
-- completes execution of the block statement
end;
end loop; -- repeats the block statement until color accepted
end;
begin -- statements of CHAPTER_14
NUMBER_IO.DEFAULT_WIDTH := 5;
loop
ENTER_COLOR(CHOICE); -- user types color and new line
SET_COL(5); PUT(CHOICE); PUT(" items available");
SET_COL(40); PUT(INVENTORY(CHOICE)); -- default width is 5
NEW_LINE;
end loop;
end CHAPTER_14;